import { eslint } from 'rollup-plugin-eslint';
import typescript from 'rollup-plugin-typescript2';
import cleaner from 'rollup-plugin-cleaner';
import pkg from './package.json';
const fs = require('fs');


const formats = ['umd', 'esm'];
const output = formats.map((format) => ({
  file: `dist/index.${format}.js`,
  format,
  name: pkg.name,
}));

// const srcPath = 'src/';
// const inputObj = {};
// fs.readdirSync(srcPath).forEach((name) => {
//   if (name.indexOf('.') === -1) {
//     inputObj[name] = `${srcPath}${name}/index.ts`;
//   }
// });
// inputObj['index'] = `${srcPath}index.ts`;
// console.log(inputObj);

export default {
  // 单入口
  input: 'src/index.ts',
  output,
  external: [],
  // 多入口
  // input: inputObj,
  // output: {
  //   dir: 'lib',
  //   format: 'esm',
  //   name: pkg.name,
  // },
  plugins: [
    eslint({
      fix: true,
      exclude: 'node_modules/**',
    }),
    // 使用 tsconfig.json 中定义 的 declarationDir
    typescript({
      useTsconfigDeclarationDir: true,
    }),
    cleaner({
      targets: ['./dist/', './lib/', './types/'],
    }),
  ],
};
